be several cards short of a (full) deck - English Synonyms Dictionary